Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow the expressions like 'v.tag' in return #5440

Merged
merged 9 commits into from
Mar 28, 2023

Conversation

xtcyclist
Copy link
Contributor

@xtcyclist xtcyclist commented Mar 27, 2023

What type of PR is this?

  • bug
  • feature
  • enhancement

What problem(s) does this PR solve?

Issue(s) number:

Fix #5329

Description:

'v.tag' means all properties of that tag are needed. They shall not be pruned by the optimizer.

How do you solve it?

Add a wildcard "*" into the VertexProp map in the tracker when encountered expressions like v.tag after the tag has been verified to be a real tag.

Special notes for your reviewer, ex. impact of this fix, design document, etc:

Checklist:

Tests:

  • Unit test(positive and negative cases)
  • Function test
  • Performance test
  • TCK

Affects:

  • Documentation affected (Please add the label if documentation needs to be modified.)
  • Incompatibility (If it breaks the compatibility, please describe it and add the label.)
  • If it's needed to cherry-pick (If cherry-pick to some branches is required, please label the destination version(s).)
  • Performance impacted: Consumes more CPU/Memory

Release notes:

Please confirm whether to be reflected in release notes and how to describe:

ex. Fixed the bug .....

@xtcyclist xtcyclist added the ready-for-testing PR: ready for the CI test label Mar 27, 2023
@xtcyclist xtcyclist added do not review PR: not ready for the code review yet wip Solution: work in progress labels Mar 27, 2023
@xtcyclist xtcyclist marked this pull request as draft March 27, 2023 10:38
@xtcyclist xtcyclist marked this pull request as ready for review March 27, 2023 11:18
@xtcyclist xtcyclist added ready for review and removed do not review PR: not ready for the code review yet wip Solution: work in progress labels Mar 27, 2023
break;
}
auto tagId = ret.value();
propsUsed_.insertVertexProp(entityAlias, tagId, "*");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it necessary to insert edge and vertex props at same time? maybe only need to handle one branch by checking where the prop is from?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just found e.likeness wouldn't reach here... Maybe this part was outdated. Let me check.

Copy link
Contributor Author

@xtcyclist xtcyclist Mar 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It goes into Kind::kSubscript as $-.e[0]. Maybe we can delete it already. 算了,不敢删。

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like we don't have sufficient information here to tell them apart. Any advise?

@xtcyclist xtcyclist requested a review from yixinglu March 28, 2023 05:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready for review ready-for-testing PR: ready for the CI test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

does nebula support outputting the attributes of a specified tag of a vertex?
5 participants